package com.rwhansen.humidor;

import java.awt.Color;
import java.awt.Font;
import java.io.File;
import java.math.BigDecimal;
import java.text.NumberFormat;
import java.util.Locale;

import javax.swing.DefaultComboBoxModel;
import javax.swing.JComboBox;
import javax.swing.JFormattedTextField;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.JTextField;
import javax.swing.border.EmptyBorder;
import javax.swing.JButton;

import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;


public class CigarDetailHumidorPanel extends JPanel {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	private static JTextField textName;
	private static JTextField textGauge;
	private static JTextField textLength;
	private static JTextField textQuantity;
	private static JTextField textDateAddedToHumidor;
	private static JTextField textPrice;
	private static JTextField textMadeBy;
	private static JTextField textSize;
	private static JTextField textBody;
	private static JTextField textCountry;
	private static JTextField textCARating;
	private static JTextField textCARatingYear;
	private static JTextField textPurchaseLocation;
	private static JComboBox comboBoxCARatingYear;
	private static JComboBox comboBoxPurchaseLocation;
	private static JComboBox comboBoxCountry;
	private static JComboBox comboBoxBody;
	private static JComboBox comboBoxSize;
	private static JComboBox comboBoxMadeBy;
	private static JComboBox comboBoxCARating;
	private static JTextArea textDescription;
	private CigarBrandInformation cigarBrandInformation;
	private Database humidorDatabase;
	private int index;
	private static JButton btnSmokeIt;
	private static JButton btnRemove;
	private static JButton btnEdit;
	private static JButton btnSave;
	private static JButton btnCancel;
	private NumberFormat n;
	private boolean delete;
	
	
	public CigarDetailHumidorPanel(final Cigar cigar, final Database humidor, final Database ratingsDatabase, int i) {
		humidorDatabase = humidor;
		index = i;
		delete = false;
		
		setFont(new Font("GodOfWar", Font.PLAIN, 12));
		setBounds(100, 100, 533, 564);
		setBorder(new EmptyBorder(5, 5, 5, 5));
		setLayout(null);
		
		getCigarBrandInformation();
		
		
//Name
		JLabel lblName = new JLabel("Cigar Name");
		lblName.setBounds(11, 29, 249, 30);
		lblName.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		add(lblName);
		
		textName = new JTextField();
		textName.setEditable(false);
		textName.setBounds(271, 29, 249, 30);
		textName.setForeground(Color.BLACK);
		textName.setText(cigar.getName());
		textName.setToolTipText("Cigar Name");
		textName.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		add(textName);
		textName.setColumns(10);
		
//Brand
		JLabel lblBrand = new JLabel("Brand");
		lblBrand.setBounds(11, 59, 249, 30);
		lblBrand.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		add(lblBrand);

		comboBoxMadeBy = new JComboBox();
		comboBoxMadeBy.setMaximumRowCount(28);
		comboBoxMadeBy.setToolTipText("Made By");
		comboBoxMadeBy.setBounds(271, 59, 249, 30);
		comboBoxMadeBy.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxBrands(cigar)));
		comboBoxMadeBy.setForeground(Color.BLACK);
		comboBoxMadeBy.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		comboBoxMadeBy.setEditable(true);
		add(comboBoxMadeBy);
		
		textMadeBy = new JTextField();
		textMadeBy.setToolTipText("Made By");
		textMadeBy.setText(cigar.getBrand());
		textMadeBy.setForeground(Color.BLACK);
		textMadeBy.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		textMadeBy.setEditable(false);
		textMadeBy.setColumns(10);
		textMadeBy.setBounds(271, 59, 249, 30);
		textMadeBy.setVisible(false);
		add(textMadeBy);
		
//Size
		JLabel lblSize = new JLabel("Size");
		lblSize.setBounds(11, 89, 249, 30);
		lblSize.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		add(lblSize);
		
		comboBoxSize = new JComboBox();
		comboBoxSize.setMaximumRowCount(27);
		comboBoxSize.setToolTipText("Size/Shape of Cigar");
		comboBoxSize.setBounds(271, 89, 249, 30);
		comboBoxSize.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxSizes(cigar)));
		comboBoxSize.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		comboBoxSize.setEditable(true);
		add(comboBoxSize);
		
		textSize = new JTextField();
		textSize.setToolTipText("Size");
		textSize.setText(cigar.getSize());
		textSize.setForeground(Color.BLACK);
		textSize.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		textSize.setEditable(false);
		textSize.setColumns(10);
		textSize.setBounds(271, 89, 249, 30);
		add(textSize);

//Body
		JLabel lblBody = new JLabel("Body");
		lblBody.setBounds(11, 119, 249, 30);
		lblBody.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		add(lblBody);

		comboBoxBody = new JComboBox();
		comboBoxBody.setMaximumRowCount(20);
		comboBoxBody.setToolTipText("Body");
		comboBoxBody.setBounds(271, 119, 249, 30);
		comboBoxBody.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxBodies(cigar)));
		comboBoxBody.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		comboBoxBody.setEditable(false);
		add(comboBoxBody);
		
		textBody = new JTextField();
		textBody.setToolTipText("Cigar Body");
		textBody.setText(cigar.getBody());
		textBody.setForeground(Color.BLACK);
		textBody.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		textBody.setEditable(false);
		textBody.setColumns(10);
		textBody.setBounds(271, 119, 249, 30);
		add(textBody);
		
//Gauge
		JLabel lblGauge = new JLabel("Gauge (must be an inteder)");
		lblGauge.setBounds(11, 149, 249, 30);
		lblGauge.setFont(new Font("GodOfWar", Font.PLAIN, 16));
		add(lblGauge);
		
		textGauge = new JFormattedTextField();
		textGauge.setEditable(false);
		textGauge.setToolTipText("Cigar Gauge");
		textGauge.setBounds(271, 149, 249, 30);
		textGauge.setText(Integer.toString(cigar.getGauge()));
		textGauge.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		add(textGauge);
		textGauge.setColumns(10);
		
//Length
		JLabel lblLength = new JLabel("Length (must be a number)");
		lblLength.setBounds(11, 179, 249, 30);
		lblLength.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		add(lblLength);
		
		textLength = new JFormattedTextField();
		textLength.setEditable(false);
		textLength.setToolTipText("Cigar Length");
		textLength.setBounds(271, 179, 249, 30);
		textLength.setText(Double.toString(cigar.getLength()));
		textLength.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		add(textLength);
		textLength.setColumns(10);
		
//Country
		JLabel lblCountry = new JLabel("Country");
		lblCountry.setBounds(11, 209, 249, 30);
		lblCountry.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		add(lblCountry);
		
		comboBoxCountry = new JComboBox();
		comboBoxCountry.setMaximumRowCount(19);
		comboBoxCountry.setToolTipText("Country of Origin");
		comboBoxCountry.setBounds(271, 209, 249, 30);
		comboBoxCountry.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxCountries(cigar)));
		comboBoxCountry.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		add(comboBoxCountry);
		
		textCountry = new JTextField();
		textCountry.setToolTipText("Country of Origin");
		textCountry.setText(cigar.getCountry());
		textCountry.setForeground(Color.BLACK);
		textCountry.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		textCountry.setEditable(false);
		textCountry.setColumns(10);
		textCountry.setBounds(271, 209, 249, 30);
		add(textCountry);
		
//CA Rating
		JLabel lblCARating = new JLabel("Cigar Aficionado Rating");
		lblCARating.setBounds(11, 239, 249, 30);
		lblCARating.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		add(lblCARating);
		
		comboBoxCARating = new JComboBox();
		comboBoxCARating.setToolTipText("Cigar Aficionado Rating");
		comboBoxCARating.setBounds(271, 239, 249, 30);
		comboBoxCARating.setMaximumRowCount(18);
		comboBoxCARating.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxCARatings(cigar)));
		comboBoxCARating.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		add(comboBoxCARating);
		
		textCARating = new JTextField();
		textCARating.setToolTipText("Cigar Aficianado Rating");
		textCARating.setText(Integer.toString(cigar.getCaRating()));
		textCARating.setForeground(Color.BLACK);
		textCARating.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		textCARating.setEditable(false);
		textCARating.setColumns(10);
		textCARating.setBounds(271, 239, 249, 30);
		add(textCARating);
		
//CA Rating Year
		JLabel lblCaRatingYear = new JLabel("CA Rating Year");
		lblCaRatingYear.setBounds(11, 269, 249, 30);
		lblCaRatingYear.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		add(lblCaRatingYear);
		
		comboBoxCARatingYear = new JComboBox();
		comboBoxCARatingYear.setMaximumRowCount(16);
		comboBoxCARatingYear.setToolTipText("Cigar Aficionado Rating Year");
		comboBoxCARatingYear.setBounds(271, 269, 249, 30);
		comboBoxCARatingYear.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxCARatingYears(cigar)));
		comboBoxCARatingYear.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		add(comboBoxCARatingYear);
		
		textCARatingYear = new JTextField();
		textCARatingYear.setToolTipText("Cigar Aficionado Rating Year");
		textCARatingYear.setText(Integer.toString(cigar.getCaRatingYear()));
		textCARatingYear.setForeground(Color.BLACK);
		textCARatingYear.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		textCARatingYear.setEditable(false);
		textCARatingYear.setColumns(10);
		textCARatingYear.setBounds(271, 269, 249, 30);
		add(textCARatingYear);
		
//Purchase Location
		JLabel lblPurchaseLocation = new JLabel("Purchase Location");
		lblPurchaseLocation.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		lblPurchaseLocation.setBounds(11, 299, 249, 30);
		add(lblPurchaseLocation);
		
		comboBoxPurchaseLocation = new JComboBox();
		comboBoxPurchaseLocation.setEditable(true);
		comboBoxPurchaseLocation.setMaximumRowCount(15);
		comboBoxPurchaseLocation.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxPurchaseLocations(cigar)));
		comboBoxPurchaseLocation.setToolTipText("Purchase Location");
		comboBoxPurchaseLocation.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		comboBoxPurchaseLocation.setBounds(271, 299, 249, 30);
		add(comboBoxPurchaseLocation);
		
		textPurchaseLocation = new JTextField();
		textPurchaseLocation.setToolTipText("Purchase Location");
		textPurchaseLocation.setText(cigar.getPurchaseLocation());
		textPurchaseLocation.setForeground(Color.BLACK);
		textPurchaseLocation.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		textPurchaseLocation.setEditable(false);
		textPurchaseLocation.setColumns(10);
		textPurchaseLocation.setBounds(271, 299, 249, 30);
		add(textPurchaseLocation);
		
//Price		
		n = NumberFormat.getCurrencyInstance(Locale.US); 
	    
		JLabel lblPrice = new JLabel("Price of the Cigar");
		lblPrice.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		lblPrice.setBounds(11, 329, 249, 30);
		add(lblPrice);
		
		textPrice = new JFormattedTextField();
		textPrice.setEditable(false);
		textPrice.setToolTipText("Price of the Cigar");
		textPrice.setText(n.format(cigar.getPrice().doubleValue()));
		textPrice.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		textPrice.setColumns(10);
		textPrice.setBounds(271, 329, 249, 30);
		add(textPrice);
		
//Date Added To Humidor
		JLabel lblDateAddedToHumidor = new JLabel("Date Added To Humidor");
		lblDateAddedToHumidor.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		lblDateAddedToHumidor.setBounds(11, 359, 249, 30);
		add(lblDateAddedToHumidor);
		
		textDateAddedToHumidor = new JFormattedTextField();
		textDateAddedToHumidor.setEditable(false);
		textDateAddedToHumidor.setToolTipText("Date Added To Humidor");
		textDateAddedToHumidor.setText(cigar.getDateAddHumidor());
		textDateAddedToHumidor.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		textDateAddedToHumidor.setColumns(10);
		textDateAddedToHumidor.setBounds(271, 359, 249, 30);
		add(textDateAddedToHumidor);
		
//Quantity
		textQuantity = new JFormattedTextField();
		textQuantity.setEditable(false);
		textQuantity.setToolTipText("Quantity of Cigars (That were added on this date)");
		textQuantity.setText(Integer.toString(cigar.getQuantity()));
		textQuantity.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		textQuantity.setColumns(10);
		textQuantity.setBounds(271, 389, 249, 30);
		add(textQuantity);
		
		JLabel lblQuantity = new JLabel("Quantity of Cigars (That were added on this date)");
		lblQuantity.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		lblQuantity.setBounds(11, 389, 249, 30);
		add(lblQuantity);

//Description
		JLabel lblDescription = new JLabel("Description:");
		lblDescription.setBounds(11, 419, 249, 30);
		lblDescription.setFont(new Font("GodOfWar", Font.PLAIN, 17));
		add(lblDescription);
		
		JScrollPane scrollPaneDescription = new JScrollPane();
		scrollPaneDescription.setBounds(11, 449, 509, 82);
		add(scrollPaneDescription);
		
		textDescription = new JTextArea();
		scrollPaneDescription.setViewportView(textDescription);
		textDescription.setLineWrap(true);
		textDescription.setWrapStyleWord(true);
		textDescription.setToolTipText("Description of Cigar");
		textDescription.setFont(new Font("GodOfWar", Font.PLAIN, 13));
		textDescription.setText(cigar.getDescription());

//Buttons ---------------------------------------------------------------------------
		
		
//Edit Cigar button
		btnEdit = new JButton("Edit Cigar");
		btnEdit.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent arg0) {
				setHumidorButtonsEnabled(false, false, false);
				editFields(true);
				delete = true;
			}
		});
		btnEdit.setToolTipText("Edit Cigar in Humidor");
		btnEdit.setBounds(0, 0, 178, 29);
		add(btnEdit);
		
//Remove Cigar Button
		btnRemove = new JButton("Remove Cigar");
		btnRemove.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				PersonalCigarAssistant.setWindowEnabled(false);
				RemoveCigarFromDatabase remove = new RemoveCigarFromDatabase(cigar, humidorDatabase.getCigars().indexOf(cigar), Database.HUMIDOR_DB_FILENAME);
				remove.setVisible(true);
			}
		});
		btnRemove.setToolTipText("Remove Cigar From Humidor");
		btnRemove.setBounds(178, 0, 178, 29);
		add(btnRemove);
		
//Smoke It Button
		btnSmokeIt = new JButton("Smoke It!");
		btnSmokeIt.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				Database.smokeCigarInHumidor(index);
//				
//				PersonalCigarAssistant.buildRatingDetails(cigar);
//				CigarDetailRatingPanel.setEditingButtonsVisible(true, true);
			}
		});
		btnSmokeIt.setToolTipText("Smoke Cigar In Humidor");
		btnSmokeIt.setBounds(356, 0, 178, 29);
		add(btnSmokeIt);

//Cancel Button
		btnCancel = new JButton("Cancel");
		btnCancel.addActionListener(new ActionListener() {
			public void actionPerformed(ActionEvent e) {
				setHumidorButtonsEnabled(true, true, true);
				editFields(false);
				fillDataFields(cigar);
				delete = false;
				
				PersonalCigarAssistant.tabbedPane.setSelectedComponent(PersonalCigarAssistant.humidorScrollPane);
				PersonalCigarAssistant.humidorTable.changeSelection(0, 0, false, false);
			}
		});
//		btnCancel.setEnabled(false);
		btnCancel.setBounds(11, 531, 249, 29);
		add(btnCancel);

//Save Button
		btnSave = new JButton("Save");
		btnSave.addActionListener(new ActionListener() {
			
			public void actionPerformed(ActionEvent e) {
				setHumidorButtonsEnabled(true, true, true);
				editFields(false);
				
				BigDecimal newPrice = new BigDecimal(textPrice.getText().replace("$", ""));
				Cigar newCigar = new Cigar(textName.getText());

				newCigar.setBrand(comboBoxMadeBy.getSelectedItem().toString());
				newCigar.setSize(comboBoxSize.getSelectedItem().toString());
				newCigar.setBody(comboBoxBody.getSelectedItem().toString());
				newCigar.setGauge(Integer.parseInt(textGauge.getText()));
				newCigar.setLength(Double.parseDouble(textLength.getText()));
				newCigar.setCountry(comboBoxCountry.getSelectedItem().toString());
				newCigar.setCaRating(Integer.parseInt(comboBoxCARating.getSelectedItem().toString()));
				newCigar.setCaRatingYear(Integer.parseInt(comboBoxCARatingYear.getSelectedItem().toString()));
				newCigar.setDescription(textDescription.getText());				
				newCigar.setPrice(newPrice);
				newCigar.setPurchaseLocation(comboBoxPurchaseLocation.getSelectedItem().toString());
				newCigar.setDateAddHumidor(textDateAddedToHumidor.getText());
				newCigar.setQuantity(Integer.parseInt(textQuantity.getText()));
				newCigar.setModified("T");
				
				//TODO
				newCigar.setRecomend(true);
				newCigar.setFullySmoked("Unknown");
				
				if (delete) {
					humidorDatabase.removeCigarFromDatabase(cigar);
					delete = false;
				}
				humidorDatabase.addCigarToDatabase(newCigar);
				
				Database.writeDatabase(Database.HUMIDOR_DB_FILENAME, humidorDatabase);
				PersonalCigarAssistant.refreshTables();
				PersonalCigarAssistant.tabbedPane.setSelectedComponent(PersonalCigarAssistant.humidorScrollPane);
				PersonalCigarAssistant.humidorTable.changeSelection(0, 0, false, false);
			}
		});
//		btnSave.setEnabled(false);
		btnSave.setBounds(271, 531, 249, 29);
		add(btnSave);
		

//		setHumidorButtonsEnabled(true, true, true);
		editFields(false);
	}
	
	/**
	 * This will allow the text fields to be edited or no not.
	 * @param edit True - Fields can be edited; False - Fields can not be edited.
	 */
	public static void editFields(boolean edit) {
		boolean initialyVisibleTrue = true;
		boolean initialyVisibleFalse = false;
		if (edit == true) {
			initialyVisibleTrue = false;
			initialyVisibleFalse = true;
		}
		
		textName.setEditable(initialyVisibleFalse);
		comboBoxMadeBy.setVisible(initialyVisibleFalse);
		textMadeBy.setVisible(initialyVisibleTrue);
		comboBoxSize.setVisible(initialyVisibleFalse);
		textSize.setVisible(initialyVisibleTrue);
		comboBoxBody.setVisible(initialyVisibleFalse);
		textBody.setVisible(initialyVisibleTrue);
		comboBoxCountry.setVisible(initialyVisibleFalse);
		textCountry.setVisible(initialyVisibleTrue);
		comboBoxCARating.setVisible(initialyVisibleFalse);
		textCARating.setVisible(initialyVisibleTrue);
		comboBoxCARatingYear.setVisible(initialyVisibleFalse);
		textCARatingYear.setVisible(initialyVisibleTrue);
		comboBoxPurchaseLocation.setVisible(initialyVisibleFalse);
		textPurchaseLocation.setVisible(initialyVisibleTrue);
		textGauge.setEditable(initialyVisibleFalse);
		textLength.setEditable(initialyVisibleFalse);
		textDateAddedToHumidor.setEditable(initialyVisibleFalse);
		textDescription.setEditable(initialyVisibleFalse);
		textPrice.setEditable(initialyVisibleFalse);
		textQuantity.setEditable(initialyVisibleFalse);
		
		btnCancel.setVisible(initialyVisibleFalse);
		btnSave.setVisible(initialyVisibleFalse);
	}

	/**
	 * This is what populates all of the combobox drop downs
	 */
	public void getCigarBrandInformation() {
		String cigarBrandInformationFileName = CigarBrandInformation.CBI_FILE_NAME;
		cigarBrandInformation = new CigarBrandInformation();
		File cbiFile = new File(cigarBrandInformationFileName);
		boolean cbiExists = cbiFile.exists();
		if (cbiExists){
			cigarBrandInformation = CigarBrandInformation.readCigarBrandInformation(cigarBrandInformationFileName);
		}
	}
	
	/**
	 * Sets the buttons in the Humidor detail pane visible and not visible
	 * 
	 * @param edit - Set true to make the Edit Cigar button visible
	 * @param remove - Set true to make the Remove Cigar button visible
	 * @param smoke - Set true to make the SmokeIt button visible
	 */
	public static void setHumidorButtonsEnabled(boolean edit, boolean remove, boolean smoke) {
		btnRemove.setEnabled(remove);
		btnEdit.setEnabled(edit);
		btnSmokeIt.setEnabled(smoke);
	}
	
	public void fillDataFields(Cigar cigar) {
		textName.setText(cigar.getName());
		comboBoxMadeBy.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxBrands(cigar)));
		comboBoxSize.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxSizes(cigar)));
		comboBoxBody.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxBodies(cigar)));
		textGauge.setText(Integer.toString(cigar.getGauge()));
		textLength.setText(Double.toString(cigar.getLength()));
		comboBoxCountry.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxCountries(cigar)));
		comboBoxCARating.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxCARatings(cigar)));
		comboBoxCARatingYear.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxCARatingYears(cigar)));
		comboBoxPurchaseLocation.setModel(new DefaultComboBoxModel(cigarBrandInformation.getComboBoxPurchaseLocations(cigar)));
		textPrice.setText(n.format(cigar.getPrice().doubleValue()));
		textDateAddedToHumidor.setText(cigar.getDateAddHumidor());
		textQuantity.setText(Integer.toString(cigar.getQuantity()));
		textDescription.setText(cigar.getDescription());
	}
}
